package com.party.course.domain;

import java.math.BigDecimal;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.party.common.annotation.Excel;
import com.party.common.core.domain.BaseEntity;
import lombok.*;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.ToString;

/**
 * 金额明细对象 amount_info
 *
 * @author ruoyi
 * @date 2025-05-29
 */
@Data
@TableName(value = "amount_info")
@ToString
@NoArgsConstructor
@AllArgsConstructor
@Builder
@EqualsAndHashCode(callSuper = false)
public class AmountInfo extends BaseEntity {
    private static final long serialVersionUID = 1L;

    /**
     * $column.columnComment
     */
    @TableId(type = IdType.ASSIGN_ID)
    private String id;

    /**
     * "用户id"
     */
    @Excel(name = "用户id")
    private String userId;

    /**
     * "排课id"
     */
    @Excel(name = "排课id")
    private String planClassId;

    /**
     * "排课id"
     */
    @Excel(name = "排课id")
    private String planClassName;

    /**
     * "余额"
     */
    @Excel(name = "余额")
    private BigDecimal amount;

    /**
     * "变动金额"
     */
    @Excel(name = "变动金额")
    private BigDecimal changeAmount;

    /**
     * "计算方式 0：加  1：减"
     */
    @Excel(name = "计算方式")
    private String countType;


    /**
     * "工资类型 0：基本工资，1：绩效工资，2：分润金额 3：试课补贴，4:试课奖励，5提现"
     */
    @Excel(name = "工资类型")
    private String wageType;

    /**
     * "变动详情"
     */
    @Excel(name = "变动详情")
    private String changeDetails;

    /**
     * "生效时间"
     */
    @Excel(name = "生效时间")
    private String validTime;

    /**
     * "生效状态  1 已生效  0未生效"
     */
    @Excel(name = "生效状态")
    private String validStatus;

    /**
     * "提现状态 0：审批中  1：已通过  2：未通过"
     */
    @Excel(name = "提现状态")
    private String cashStatus;

    private String delFlag;

    /**
     * 流水名称
     */
    @TableField(exist = false)
    private String name;
    /**
     * 上课时间
     */
    @TableField(exist = false)
    private String upClassTime;

    /**
     * 到账时间
     */
    @TableField(exist = false)
    private String arrivedTime;

    /**
     * 到账状态
     */
    @TableField(exist = false)
    private String arrivedStatus;

    @TableField(exist = false)
    private StudentInfo studentInfo;

    @TableField(exist = false)
    private String phonenumber;


    @TableField(exist = false)
    private String nickName;




    @TableField(exist = false)
    private ApprovalInfo approvalInfo;





}
